% Newton 插值
clear; 

X = [0.5, 0.6, 0.4, 0.7];              % 插值节点
Y = [ -0.6931, -0.5108, -0.9163, -0.3567]; % 函数值
[p,q] = d_d(X,Y);   % 计算差商, q 为差商表对角线

x = 0.54;  % 需要插值的点
% 线性插值：取插值节点 0.5, 0.6
y1 = q(1) + q(2)*(x-0.5);
fprintf('线性插值的结果: %.4f\n',y1);

% 二次插值：取插值节点 0.5, 0.6, 0.4
y2 = q(1) + q(2)*(x-0.5) + q(3)*(x-0.5)*(x-0.6);
fprintf('二次插值的结果: %.4f\n',y2);

% 三次插值：取插值节点 0.5, 0.6, 0.4, 0.7
y2 = q(1) + q(2)*(x-0.5) + q(3)*(x-0.5)*(x-0.6) + q(4)*(x-0.5)*(x-0.6)*(x-0.4);
fprintf('三次插值的结果: %.4f\n',y2);

